package cn.school.notice.entity;


import cn.school.common.BaseVO;
import cn.school.common.utils.SysUserUtils;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

@Data
@TableName("t_school_notice")
public class SchoolNotice extends BaseVO {

    private static final long serialVersionUID = 2854955346866992421L;
    /**
     * 主键id
     */
    @TableId
    @ApiModelProperty(value = "id", hidden = false)
    private Long id;

    /**
     * 是否已读 0:未读 1:已读
     */
    @ExcelProperty("是否已读")
    @ApiModelProperty(value = "是否已读", required = false)
    private Integer status;

    /**
     * 接收人
     */
    @ExcelProperty("接收人")
    @ApiModelProperty(value = "接收人", required = false)
    private String recipient;

    /**
     * 通知发布范围
     */
    @ExcelProperty("通知发布范围")
    @ApiModelProperty(value = "通知发布范围", required = false)
    private String releaseScopeNotice;

    /**
     * 通知内容
     */
    @ExcelProperty("通知内容")
    @ApiModelProperty(value = "通知内容", required = false)
    private  String noticeContent;

    /**
     * 通知类型
     */
    @ExcelProperty("通知类型 0:学工通知 1：安全通知")
    @ApiModelProperty(value = "通知类型", required = false)
    private String noticeType;


    @ExcelProperty("标题")
    @ApiModelProperty(value = "标题", required = false)
    private String title;

    @ApiModelProperty(value = "是否通知学生 0-否 1-是")
    private String isNoticeStudent;

    @TableField(exist = false)
    private List<String> classIds;

    @TableField(exist = false)
    private String grade;

    @ApiModelProperty(value = "通知是否已发送 0-否 1-是")
    private String isSend;

    @ApiModelProperty(value = "选班级时用来存班级ID，多个用逗号隔开")
    private String classId;

    @ApiModelProperty(value = "选年级时用来存年级ID，多个用逗号隔开")
    private String gradeId;

    @ApiModelProperty(value = "是否通知部门 0-否 1-是")
    private String isNoticeDept;

    @ApiModelProperty(value = "通知部门ID集合")
    private String noticeDepts;


    @TableField(exist = false)
    private Integer pageNum;

    @TableField(exist = false)
    private Integer pageSize;
    /**
     * 默认租户为当前登录人的租户
     */
    private String tenantId = SysUserUtils.getSysUser().getTenantId();


}
